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

vmxnet3: make bit twiddle routines inline

Gcc doesn't usually handle inline across compilation units, and the
functions don't have to be global in scope. Move the set/reset flag
functions int the existing vmxnet3 header.

Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
Acked-by: Shreyas Bhatewara <sbhatewara@vmware.com>
Signed-off-by: David S. Miller <davem@davemloft.net>

authored by

stephen hemminger and committed by
David S. Miller
ae316bb5 379b7383

+14 -20
-17
drivers/net/vmxnet3/vmxnet3_drv.c
··· 1548 1548 } 1549 1549 } 1550 1550 1551 - 1552 - inline void set_flag_le16(__le16 *data, u16 flag) 1553 - { 1554 - *data = cpu_to_le16(le16_to_cpu(*data) | flag); 1555 - } 1556 - 1557 - inline void set_flag_le64(__le64 *data, u64 flag) 1558 - { 1559 - *data = cpu_to_le64(le64_to_cpu(*data) | flag); 1560 - } 1561 - 1562 - inline void reset_flag_le64(__le64 *data, u64 flag) 1563 - { 1564 - *data = cpu_to_le64(le64_to_cpu(*data) & ~flag); 1565 - } 1566 - 1567 - 1568 1551 static void 1569 1552 vmxnet3_vlan_rx_register(struct net_device *netdev, struct vlan_group *grp) 1570 1553 {
+14 -3
drivers/net/vmxnet3/vmxnet3_int.h
··· 353 353 #define VMXNET3_MAX_ETH_HDR_SIZE 22 354 354 #define VMXNET3_MAX_SKB_BUF_SIZE (3*1024) 355 355 356 - void set_flag_le16(__le16 *data, u16 flag); 357 - void set_flag_le64(__le64 *data, u64 flag); 358 - void reset_flag_le64(__le64 *data, u64 flag); 356 + static inline void set_flag_le16(__le16 *data, u16 flag) 357 + { 358 + *data = cpu_to_le16(le16_to_cpu(*data) | flag); 359 + } 360 + 361 + static inline void set_flag_le64(__le64 *data, u64 flag) 362 + { 363 + *data = cpu_to_le64(le64_to_cpu(*data) | flag); 364 + } 365 + 366 + static inline void reset_flag_le64(__le64 *data, u64 flag) 367 + { 368 + *data = cpu_to_le64(le64_to_cpu(*data) & ~flag); 369 + } 359 370 360 371 int 361 372 vmxnet3_quiesce_dev(struct vmxnet3_adapter *adapter);