NTB: Fix macro parameter conflict with field name
If the parameter given to the macro is replaced throughout the macro as it is evaluated. The intent is that the macro parameter should replace the only the first parameter to container_of(). However, the way the macro was written, it would also inadvertantly replace a structure field name. If a parameter of any other name is given to the macro, it will fail to compile, if the structure does not contain a field of the same name. At worst, it will compile, and hide improper access of an unintended field in the structure. Change the macro parameter name, so it does not conflict with the structure field name. Signed-off-by: Allen Hubbe <Allen.Hubbe@emc.com> Acked-by: Dave Jiang <dave.jiang@intel.com> Signed-off-by: Jon Mason <jdmason@kudzu.us>
This commit is contained in:
Родитель
a1b3695820
Коммит
03beaec80d
|
@ -337,7 +337,8 @@ struct intel_ntb_dev {
|
|||
#define ndev_pdev(ndev) ((ndev)->ntb.pdev)
|
||||
#define ndev_name(ndev) pci_name(ndev_pdev(ndev))
|
||||
#define ndev_dev(ndev) (&ndev_pdev(ndev)->dev)
|
||||
#define ntb_ndev(ntb) container_of(ntb, struct intel_ntb_dev, ntb)
|
||||
#define hb_ndev(work) container_of(work, struct intel_ntb_dev, hb_timer.work)
|
||||
#define ntb_ndev(__ntb) container_of(__ntb, struct intel_ntb_dev, ntb)
|
||||
#define hb_ndev(__work) container_of(__work, struct intel_ntb_dev, \
|
||||
hb_timer.work)
|
||||
|
||||
#endif
|
||||
|
|
Загрузка…
Ссылка в новой задаче