Hi Jens, After merging the block tree, today's linux-next build (x86 allmodconfig) failed like this: /home/broonie/next/next/drivers/nvme/host/lightnvm.c: In function 'nvme_nvm_identity': /home/broonie/next/next/drivers/nvme/host/lightnvm.c:279:27: error: 'struct nvme_ns' has no member named 'dev' struct nvme_dev *dev = ns->dev; ^ /home/broonie/next/next/drivers/nvme/host/lightnvm.c:292:32: error: dereferencing pointer to incomplete type 'struct nvme_dev' ret = nvme_submit_sync_cmd(dev->admin_q, (struct nvme_command *)&c, ^ /home/broonie/next/next/drivers/nvme/host/lightnvm.c: In function 'nvme_nvm_get_l2p_tbl': /home/broonie/next/next/drivers/nvme/host/lightnvm.c:317:27: error: 'struct nvme_ns' has no member named 'dev' struct nvme_dev *dev = ns->dev; ^ /home/broonie/next/next/drivers/nvme/host/lightnvm.c:319:36: error: dereferencing pointer to incomplete type 'struct nvme_dev' u32 len = queue_max_hw_sectors(dev->admin_q) << 9; ^ /home/broonie/next/next/drivers/nvme/host/lightnvm.c: In function 'nvme_nvm_get_bb_tbl': /home/broonie/next/next/drivers/nvme/host/lightnvm.c:365:27: error: 'struct nvme_ns' has no member named 'dev' struct nvme_dev *dev = ns->dev; ^ /home/broonie/next/next/drivers/nvme/host/lightnvm.c:379:32: error: dereferencing pointer to incomplete type 'struct nvme_dev' ret = nvme_submit_sync_cmd(dev->admin_q, (struct nvme_command *)&c, ^ /home/broonie/next/next/drivers/nvme/host/lightnvm.c: In function 'nvme_nvm_set_bb_tbl': /home/broonie/next/next/drivers/nvme/host/lightnvm.c:422:27: error: 'struct nvme_ns' has no member named 'dev' struct nvme_dev *dev = ns->dev; ^ /home/broonie/next/next/drivers/nvme/host/lightnvm.c:432:32: error: dereferencing pointer to incomplete type 'struct nvme_dev' ret = nvme_submit_sync_cmd(dev->admin_q, (struct nvme_command *)&c, ^ /home/broonie/next/next/drivers/nvme/host/lightnvm.c: In function 'nvme_nvm_create_dma_pool': /home/broonie/next/next/drivers/nvme/host/lightnvm.c:521:27: error: 'struct nvme_ns' has no member named 'dev' struct nvme_dev *dev = ns->dev; ^ /home/broonie/next/next/drivers/nvme/host/lightnvm.c:523:34: error: dereferencing pointer to incomplete type 'struct nvme_dev' return dma_pool_create(name, dev->dev, PAGE_SIZE, PAGE_SIZE, 0); ^ /home/broonie/next/next/drivers/nvme/host/lightnvm.c: In function 'nvme_nvm_ns_supported': /home/broonie/next/next/drivers/nvme/host/lightnvm.c:576:27: error: 'struct nvme_ns' has no member named 'dev' struct nvme_dev *dev = ns->dev; ^ In file included from /home/broonie/next/next/include/linux/list.h:8:0, from /home/broonie/next/next/include/linux/pci.h:25, from /home/broonie/next/next/drivers/nvme/host/nvme.h:18, from /home/broonie/next/next/drivers/nvme/host/lightnvm.c:23: /home/broonie/next/next/drivers/nvme/host/lightnvm.c:577:39: error: dereferencing pointer to incomplete type 'struct nvme_dev' struct pci_dev *pdev = to_pci_dev(dev->dev); ^ /home/broonie/next/next/include/linux/kernel.h:813:49: note: in definition of macro 'container_of' const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ /home/broonie/next/next/drivers/nvme/host/lightnvm.c:577:25: note: in expansion of macro 'to_pci_dev' struct pci_dev *pdev = to_pci_dev(dev->dev); ^ /home/broonie/next/next/drivers/nvme/host/lightnvm.c: In function 'nvme_nvm_create_dma_pool': /home/broonie/next/next/drivers/nvme/host/lightnvm.c:524:1: warning: control reaches end of non-void function [-Wreturn-type] } ^ /home/broonie/next/next/scripts/Makefile.build:258: recipe for target 'drivers/nvme/host/lightnvm.o' failed make[4]: *** [drivers/nvme/host/lightnvm.o] Error 1 Caused by commit 1c63dc66580d4b (nvme: split a new struct nvme_ctrl out of struct nvme_dev) which replaced dev in struct nvme_ns with ctrl without updating this user. I used the block tree from the last -next build (3f3a8a218c2f) instead.
Attachment:
pgp238EIM4edp.pgp
Description: PGP signature