Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

drbd: Stop using NLA_PUT*().

These macros no longer exist in kernel version v3.5-rc1.

Signed-off-by: Philipp Reisner <philipp.reisner@linbit.com>
Signed-off-by: Lars Ellenberg <lars.ellenberg@linbit.com>

authored by

Andreas Gruenbacher and committed by
Philipp Reisner
26ec9287 7e0f096b

+45 -33
+32 -22
drivers/block/drbd/drbd_nl.c
··· 2554 2554 nla = nla_nest_start(skb, DRBD_NLA_CFG_CONTEXT); 2555 2555 if (!nla) 2556 2556 goto nla_put_failure; 2557 - if (vnr != VOLUME_UNSPECIFIED) 2558 - NLA_PUT_U32(skb, T_ctx_volume, vnr); 2559 - NLA_PUT_STRING(skb, T_ctx_resource_name, tconn->name); 2560 - if (tconn->my_addr_len) 2561 - NLA_PUT(skb, T_ctx_my_addr, tconn->my_addr_len, &tconn->my_addr); 2562 - if (tconn->peer_addr_len) 2563 - NLA_PUT(skb, T_ctx_peer_addr, tconn->peer_addr_len, &tconn->peer_addr); 2557 + if (vnr != VOLUME_UNSPECIFIED && 2558 + nla_put_u32(skb, T_ctx_volume, vnr)) 2559 + goto nla_put_failure; 2560 + if (nla_put_string(skb, T_ctx_resource_name, tconn->name)) 2561 + goto nla_put_failure; 2562 + if (tconn->my_addr_len && 2563 + nla_put(skb, T_ctx_my_addr, tconn->my_addr_len, &tconn->my_addr)) 2564 + goto nla_put_failure; 2565 + if (tconn->peer_addr_len && 2566 + nla_put(skb, T_ctx_peer_addr, tconn->peer_addr_len, &tconn->peer_addr)) 2567 + goto nla_put_failure; 2564 2568 nla_nest_end(skb, nla); 2565 2569 return 0; 2566 2570 ··· 2622 2618 nla = nla_nest_start(skb, DRBD_NLA_STATE_INFO); 2623 2619 if (!nla) 2624 2620 goto nla_put_failure; 2625 - NLA_PUT_U32(skb, T_sib_reason, sib ? sib->sib_reason : SIB_GET_STATUS_REPLY); 2626 - NLA_PUT_U32(skb, T_current_state, mdev->state.i); 2627 - NLA_PUT_U64(skb, T_ed_uuid, mdev->ed_uuid); 2628 - NLA_PUT_U64(skb, T_capacity, drbd_get_capacity(mdev->this_bdev)); 2621 + if (nla_put_u32(skb, T_sib_reason, sib ? sib->sib_reason : SIB_GET_STATUS_REPLY) || 2622 + nla_put_u32(skb, T_current_state, mdev->state.i) || 2623 + nla_put_u64(skb, T_ed_uuid, mdev->ed_uuid) || 2624 + nla_put_u64(skb, T_capacity, drbd_get_capacity(mdev->this_bdev))) 2625 + goto nla_put_failure; 2629 2626 2630 2627 if (got_ldev) { 2631 - NLA_PUT_U32(skb, T_disk_flags, mdev->ldev->md.flags); 2632 - NLA_PUT(skb, T_uuids, sizeof(si->uuids), mdev->ldev->md.uuid); 2633 - NLA_PUT_U64(skb, T_bits_total, drbd_bm_bits(mdev)); 2634 - NLA_PUT_U64(skb, T_bits_oos, drbd_bm_total_weight(mdev)); 2628 + if (nla_put_u32(skb, T_disk_flags, mdev->ldev->md.flags) || 2629 + nla_put(skb, T_uuids, sizeof(si->uuids), mdev->ldev->md.uuid) || 2630 + nla_put_u64(skb, T_bits_total, drbd_bm_bits(mdev)) || 2631 + nla_put_u64(skb, T_bits_oos, drbd_bm_total_weight(mdev))) 2632 + goto nla_put_failure; 2635 2633 if (C_SYNC_SOURCE <= mdev->state.conn && 2636 2634 C_PAUSED_SYNC_T >= mdev->state.conn) { 2637 - NLA_PUT_U64(skb, T_bits_rs_total, mdev->rs_total); 2638 - NLA_PUT_U64(skb, T_bits_rs_failed, mdev->rs_failed); 2635 + if (nla_put_u64(skb, T_bits_rs_total, mdev->rs_total) || 2636 + nla_put_u64(skb, T_bits_rs_failed, mdev->rs_failed)) 2637 + goto nla_put_failure; 2639 2638 } 2640 2639 } 2641 2640 ··· 2648 2641 case SIB_GET_STATUS_REPLY: 2649 2642 break; 2650 2643 case SIB_STATE_CHANGE: 2651 - NLA_PUT_U32(skb, T_prev_state, sib->os.i); 2652 - NLA_PUT_U32(skb, T_new_state, sib->ns.i); 2644 + if (nla_put_u32(skb, T_prev_state, sib->os.i) || 2645 + nla_put_u32(skb, T_new_state, sib->ns.i)) 2646 + goto nla_put_failure; 2653 2647 break; 2654 2648 case SIB_HELPER_POST: 2655 - NLA_PUT_U32(skb, 2656 - T_helper_exit_code, sib->helper_exit_code); 2649 + if (nla_put_u32(skb, T_helper_exit_code, 2650 + sib->helper_exit_code)) 2651 + goto nla_put_failure; 2657 2652 /* fall through */ 2658 2653 case SIB_HELPER_PRE: 2659 - NLA_PUT_STRING(skb, T_helper, sib->helper_name); 2654 + if (nla_put_string(skb, T_helper, sib->helper_name)) 2655 + goto nla_put_failure; 2660 2656 break; 2661 2657 } 2662 2658 }
+5 -3
include/linux/genl_magic_func.h
··· 367 367 __is_signed) \ 368 368 if (!exclude_sensitive || !((attr_flag) & DRBD_F_SENSITIVE)) { \ 369 369 DPRINT_FIELD(">>", nla_type, name, s, NULL); \ 370 - __put(skb, attr_nr, s->name); \ 370 + if (__put(skb, attr_nr, s->name)) \ 371 + goto nla_put_failure; \ 371 372 } 372 373 373 374 #undef __array ··· 376 375 __get, __put, __is_signed) \ 377 376 if (!exclude_sensitive || !((attr_flag) & DRBD_F_SENSITIVE)) { \ 378 377 DPRINT_ARRAY(">>",nla_type, name, s, NULL); \ 379 - __put(skb, attr_nr, min_t(int, maxlen, \ 378 + if (__put(skb, attr_nr, min_t(int, maxlen, \ 380 379 s->name ## _len + (nla_type == NLA_NUL_STRING)),\ 381 - s->name); \ 380 + s->name)) \ 381 + goto nla_put_failure; \ 382 382 } 383 383 384 384 #include GENL_MAGIC_INCLUDE_FILE
+8 -8
include/linux/genl_magic_struct.h
··· 65 65 /* possible field types */ 66 66 #define __flg_field(attr_nr, attr_flag, name) \ 67 67 __field(attr_nr, attr_flag, name, NLA_U8, char, \ 68 - nla_get_u8, NLA_PUT_U8, false) 68 + nla_get_u8, nla_put_u8, false) 69 69 #define __u8_field(attr_nr, attr_flag, name) \ 70 70 __field(attr_nr, attr_flag, name, NLA_U8, unsigned char, \ 71 - nla_get_u8, NLA_PUT_U8, false) 71 + nla_get_u8, nla_put_u8, false) 72 72 #define __u16_field(attr_nr, attr_flag, name) \ 73 73 __field(attr_nr, attr_flag, name, NLA_U16, __u16, \ 74 - nla_get_u16, NLA_PUT_U16, false) 74 + nla_get_u16, nla_put_u16, false) 75 75 #define __u32_field(attr_nr, attr_flag, name) \ 76 76 __field(attr_nr, attr_flag, name, NLA_U32, __u32, \ 77 - nla_get_u32, NLA_PUT_U32, false) 77 + nla_get_u32, nla_put_u32, false) 78 78 #define __s32_field(attr_nr, attr_flag, name) \ 79 79 __field(attr_nr, attr_flag, name, NLA_U32, __s32, \ 80 - nla_get_u32, NLA_PUT_U32, true) 80 + nla_get_u32, nla_put_u32, true) 81 81 #define __u64_field(attr_nr, attr_flag, name) \ 82 82 __field(attr_nr, attr_flag, name, NLA_U64, __u64, \ 83 - nla_get_u64, NLA_PUT_U64, false) 83 + nla_get_u64, nla_put_u64, false) 84 84 #define __str_field(attr_nr, attr_flag, name, maxlen) \ 85 85 __array(attr_nr, attr_flag, name, NLA_NUL_STRING, char, maxlen, \ 86 - nla_strlcpy, NLA_PUT, false) 86 + nla_strlcpy, nla_put, false) 87 87 #define __bin_field(attr_nr, attr_flag, name, maxlen) \ 88 88 __array(attr_nr, attr_flag, name, NLA_BINARY, char, maxlen, \ 89 - nla_memcpy, NLA_PUT, false) 89 + nla_memcpy, nla_put, false) 90 90 91 91 /* fields with default values */ 92 92 #define __flg_field_def(attr_nr, attr_flag, name, default) \