All of lore.kernel.org
 help / color / mirror / Atom feed
* [cocci] Reconsidering repeated pointer checks with SmPL
@ 2023-03-15 17:36 Markus Elfring
  2023-03-16 20:07   ` Markus Elfring
                   ` (30 more replies)
  0 siblings, 31 replies; 197+ messages in thread
From: Markus Elfring @ 2023-03-15 17:36 UTC (permalink / raw)
  To: cocci, kernel-janitors

Hello,

I tried the following SmPL script out also on the source files from
the software “Linux next-20230315”.

@display@
expression call, storage;
identifier target;
@@
*storage = call(...);
*if (!storage)
    goto target;
 ...
*target:
*if (storage)
 {
 ...
 }


79 source files were found where a check was performed for a failed function call
and an opposite check is immediately performed for the same variable.
I guess that pointer checks are repeated at these source code places.
I imagine that such code should be reconsidered once more and improved accordingly.

How do you think about to achieve any adjustments in this design direction?

Regards,
Markus


^ permalink raw reply	[flat|nested] 197+ messages in thread

end of thread, other threads:[~2024-01-05 17:44 UTC | newest]

Thread overview: 197+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-03-15 17:36 [cocci] Reconsidering repeated pointer checks with SmPL Markus Elfring
2023-03-16 20:07 ` [cocci] [PATCH 0/4] powerpc/4xx: Adjustments for four function implementations Markus Elfring
2023-03-16 20:07   ` Markus Elfring
2023-03-16 20:10   ` [PATCH 1/4] powerpc/4xx: Fix exception handling in ppc4xx_pciex_port_setup_hose() Markus Elfring
2023-03-16 20:14   ` [PATCH 2/4] powerpc/4xx: Fix exception handling in ppc4xx_probe_pcix_bridge() Markus Elfring
2023-03-16 20:16   ` [PATCH 3/4] powerpc/4xx: Fix exception handling in ppc4xx_probe_pci_bridge() Markus Elfring
2023-03-16 20:18   ` [PATCH 4/4] powerpc/4xx: Delete unnecessary variable initialisations in four functions Markus Elfring
2023-03-25 15:30   ` [cocci] [PATCH v2 0/4] powerpc/4xx: Adjustments for four function implementations Markus Elfring
2023-03-25 15:30     ` Markus Elfring
2023-03-25 15:36     ` [cocci] [PATCH v2 1/4] powerpc/4xx: Fix exception handling in ppc4xx_pciex_port_setup_hose() Markus Elfring
2023-03-25 15:36       ` Markus Elfring
2023-03-25 15:38     ` [cocci] [PATCH v2 2/4] powerpc/4xx: Fix exception handling in ppc4xx_probe_pcix_bridge() Markus Elfring
2023-03-25 15:38       ` Markus Elfring
2023-03-25 15:40     ` [cocci] [PATCH v2 3/4] powerpc/4xx: Fix exception handling in ppc4xx_probe_pci_bridge() Markus Elfring
2023-03-25 15:40       ` Markus Elfring
2023-03-25 15:42     ` [cocci] [PATCH v2 4/4] powerpc/4xx: Delete unnecessary variable initialisations in four functions Markus Elfring
2023-03-25 15:42       ` Markus Elfring
2024-01-05 17:42     ` [PATCH v2 0/4] powerpc/4xx: Adjustments for four function implementations Markus Elfring
2024-01-05 17:42       ` Markus Elfring
2024-01-05 17:42       ` [cocci] " Markus Elfring
2023-03-17  8:50 ` [PATCH] powerpc/pseries: Fix exception handling in pSeries_reconfig_add_node() Markus Elfring
2023-03-17 13:11   ` Nathan Lynch
2023-03-17 13:11     ` [cocci] " Nathan Lynch
2023-03-17 13:11     ` Nathan Lynch
2023-03-17 14:20     ` [cocci] " Markus Elfring
2023-03-17 14:20       ` Markus Elfring
2023-03-17 15:41       ` Nathan Lynch
2023-03-17 15:41         ` [cocci] " Nathan Lynch
2023-03-17 15:41         ` Nathan Lynch
2023-03-18  7:30         ` [cocci] " Markus Elfring
2023-03-18  7:30           ` Markus Elfring
2023-03-20 15:38           ` Nathan Lynch
2023-03-20 15:38             ` [cocci] " Nathan Lynch
2023-03-20 15:38             ` Nathan Lynch
2023-03-21  6:54             ` [cocci] " Markus Elfring
2023-03-21  6:54               ` Markus Elfring
2023-03-21 10:30               ` [cocci] [PATCH v2 0/2] powerpc/pseries: Fixes for " Markus Elfring
2023-03-21 10:30                 ` Markus Elfring
2023-03-21 10:33                 ` [PATCH v2 1/2] powerpc/pseries: Do not pass an error pointer to of_node_put() " Markus Elfring
2023-03-21 10:36                 ` [PATCH v2 2/2] powerpc/pseries: Fix exception handling " Markus Elfring
2023-03-25 13:40                 ` [cocci] [PATCH resent v2 0/2] powerpc/pseries: Fixes for " Markus Elfring
2023-03-25 13:40                   ` Markus Elfring
2023-03-25 13:42                   ` [cocci] [PATCH resent v2 1/2] powerpc/pseries: Do not pass an error pointer to of_node_put() " Markus Elfring
2023-03-25 13:42                     ` Markus Elfring
2023-03-25 13:44                   ` [cocci] [PATCH resent v2 2/2] powerpc/pseries: Fix exception handling " Markus Elfring
2023-03-25 13:44                     ` Markus Elfring
2024-01-05 17:19                   ` [cocci] [PATCH resent v2 0/2] powerpc/pseries: Fixes for " Markus Elfring
2024-01-05 17:19                     ` Markus Elfring
2024-01-05 17:19                     ` Markus Elfring
     [not found] ` <afe30fc6-04c9-528c-f84a-67902b5a6ed8@web.de>
2023-03-19 11:40   ` [PATCH] RDMA/siw: Fix exception handling in siw_accept_newconn() Leon Romanovsky
2023-03-19 11:40     ` [cocci] " Leon Romanovsky
     [not found]     ` <1c06e86d-1468-c11a-8344-9563ad6047b5@web.de>
2023-03-19 14:11       ` Leon Romanovsky
2023-03-19 14:11         ` [cocci] " Leon Romanovsky
     [not found]         ` <a03c1d04-a41e-7722-c36a-bd6f61094702@web.de>
2023-03-19 17:37           ` Leon Romanovsky
2023-03-20  8:19             ` [cocci] " Markus Elfring
     [not found] ` <f0f96f74-21d1-f5bf-1086-1c3ce0ea18f5@web.de>
2023-03-19 11:41   ` [PATCH] RDMA/erdma: Fix exception handling in erdma_accept_newconn() Leon Romanovsky
2023-03-19 11:41     ` [cocci] " Leon Romanovsky
2023-03-19 13:36   ` Cheng Xu
2023-03-19 13:36     ` [cocci] " Cheng Xu
2023-03-19 14:00     ` Markus Elfring
2023-03-19 20:00 ` [cocci] [PATCH 0/2] irqchip/gic-v4: Adjustments for two function implementations Markus Elfring
2023-03-25 10:25   ` [cocci] [PATCH resent " Markus Elfring
2023-03-25 10:27     ` [cocci] [PATCH resent 1/2] irqchip/gic-v4: Fix exception handling in its_alloc_vcpu_irqs() Markus Elfring
2023-03-25 10:30     ` [cocci] [PATCH resent 2/2] irqchip/gic-v4: Fix exception handling in its_alloc_vcpu_sgis() Markus Elfring
     [not found] ` <521b63e1-9470-58ef-599e-50a1846e5380@web.de>
2023-03-20  4:21   ` [PATCH] Input: iforce - Fix exception handling in iforce_usb_probe() Dmitry Torokhov
2023-03-20  4:34     ` Tetsuo Handa
2023-03-20  6:05       ` Dmitry Torokhov
2023-03-25 10:12         ` [cocci] [PATCH resent] " Markus Elfring
2023-03-20  8:55     ` [cocci] [PATCH] " Markus Elfring
2023-03-20 16:47 ` [cocci] [PATCH 0/2] md/raid: Adjustments for two function implementations Markus Elfring
2023-03-25  9:20   ` [cocci] [PATCH resent " Markus Elfring
2023-03-25  9:22     ` [cocci] [PATCH resent 1/2] md/raid1: Fix exception handling in setup_conf() Markus Elfring
2023-03-25  9:24     ` [cocci] [PATCH resent 2/2] md/raid10: " Markus Elfring
2023-03-28 23:21     ` [PATCH resent 0/2] md/raid: Adjustments for two function implementations Song Liu
2023-03-29  5:32       ` [cocci] [0/2] " Markus Elfring
2023-03-29 19:03         ` Song Liu
2023-03-21 16:07 ` [cocci] [PATCH 0/3] scsi: message: fusion: Adjustments for four " Markus Elfring
2023-03-25  9:00   ` [cocci] [PATCH resent " Markus Elfring
2023-03-25  9:03     ` [cocci] [PATCH resent 1/3] scsi: message: fusion: Return directly after input data validation failed in four functions Markus Elfring
2023-03-25  9:07     ` [cocci] [PATCH resent 2/3] scsi: message: fusion: Delete a redundant pointer check " Markus Elfring
2023-03-25  9:10     ` [cocci] [PATCH resent 3/3] scsi: message: fusion: Delete an unnecessary variable initialisation " Markus Elfring
     [not found] ` <e3aaeecf-8e74-2e74-c58a-d80e153e98f9@web.de>
2023-03-22  9:36   ` [PATCH] media: hantro: HEVC: Fix exception handling in tile_buffer_reallocate() Benjamin Gaignard
2023-03-22  9:36     ` [cocci] " Benjamin Gaignard
2023-03-22  9:36     ` Benjamin Gaignard
2023-03-22 14:45     ` [cocci] " Markus Elfring
2023-03-22 14:45       ` Markus Elfring
2023-03-22 19:20 ` [cocci] [PATCH] btrfs: Fix exception handling in relocating_repair_kthread() Markus Elfring
2023-03-25  8:25   ` [cocci] [PATCH resent] " Markus Elfring
2023-03-22 21:20 ` [cocci] [PATCH] ufs: Fix exception handling in ufs_fill_super() Markus Elfring
2023-03-25  8:32   ` [cocci] [PATCH resent] " Markus Elfring
2023-03-23 17:30 ` [PATCH] mm/mempolicy: Fix exception handling in shared_policy_replace() Markus Elfring
2023-03-23 17:30   ` [cocci] " Markus Elfring
2023-03-24 17:30   ` Vlastimil Babka
2023-03-24 17:30     ` [cocci] " Vlastimil Babka
2023-03-24 18:03     ` Markus Elfring
2023-03-24 18:03       ` [cocci] " Markus Elfring
2023-03-23 21:12 ` [cocci] [PATCH] perf cputopo: Improve exception handling in build_cpu_topology() Markus Elfring
2023-03-25  8:50   ` [cocci] [PATCH resent] " Markus Elfring
2023-03-24 11:43 ` [cocci] [PATCH] perf pmu: Improve exception handling in pmu_lookup() Markus Elfring
2023-03-24 14:12 ` [cocci] [PATCH] selftests/bpf: Improve exception handling in rbtree_add_and_remove() Markus Elfring
2023-03-24 20:07   ` Alexei Starovoitov
     [not found] ` <e6656c83-ee7a-a253-2028-109138779c94@web.de>
2023-03-24 15:42   ` [cocci] [PATCH resent] drm/amd/display: Fix exception handling in dm_validate_stream_and_context() Markus Elfring
2023-03-24 15:42     ` Markus Elfring
2023-03-24 17:46     ` Hamza Mahfooz
2023-03-24 18:19       ` [cocci] " Markus Elfring
2023-03-24 18:19         ` Markus Elfring
2023-03-24 18:33         ` Hamza Mahfooz
     [not found] ` <7214c986-4d0e-ad78-6312-c84515dc9abf@web.de>
2023-03-24 17:02   ` [cocci] [PATCH resent] ext4: Fix exception handling in parse_apply_sb_mount_options() Markus Elfring
     [not found] ` <e33f264a-7ee9-4ebc-d58e-bbb7fd567198@web.de>
2023-03-25  9:31   ` [cocci] [PATCH resent] bcache: Fix exception handling in mca_alloc() Markus Elfring
2023-03-25 10:16     ` Coly Li
2023-03-25 12:21       ` [cocci] [PATCH v2] " Markus Elfring
2023-03-25 16:07         ` Coly Li
2023-03-25 17:10           ` [cocci] " Markus Elfring
2023-03-25 12:50       ` [cocci] [PATCH resent] " Markus Elfring
     [not found] ` <00589154-00ac-4ed5-2a37-60b3c6f6c523@web.de>
2023-03-25  9:40   ` [cocci] [PATCH resent] mei: Fix exception handling in mei_cl_irq_read_msg() Markus Elfring
2023-03-25 11:51     ` Winkler, Tomas
     [not found] ` <3675f707-bff0-3caf-29a2-b99e5b9c6554@web.de>
2023-03-25  9:43   ` [PATCH resent] mtd: cfi_cmdset_0001: Fix exception handling in cfi_intelext_setup() Markus Elfring
2023-03-25  9:43     ` [cocci] " Markus Elfring
     [not found] ` <21e58abb-f215-b9b7-ffe8-236dd40c6bd2@web.de>
2023-03-25  9:50   ` [cocci] [PATCH resent] bbc_i2c: Fix exception handling in attach_one_i2c() Markus Elfring
     [not found] ` <15fa53e5-916f-dac8-87fb-9cb81021418c@web.de>
2023-03-25 10:20   ` [cocci] [PATCH resent] irqchip/partitions: Fix exception handling in partition_create_desc() Markus Elfring
     [not found] ` <eaa9f90f-c91b-dc87-51a1-d97f99fc5b4b@web.de>
2023-03-25 14:00   ` [cocci] [PATCH resent] dmaengine: bestcomm: Fix exception handling in bcom_task_alloc() Markus Elfring
     [not found] ` <b3cce5b3-2e68-180c-c293-74d4d9d4032c@web.de>
2023-03-25 14:02   ` [cocci] [PATCH resent] cpufreq: sparc: Fix exception handling in two functions Markus Elfring
2023-04-03  3:35     ` Viresh Kumar
2023-04-03 12:50       ` [cocci] [PATCH] " Markus Elfring
2023-04-03 23:04         ` Viresh Kumar
2023-04-07 17:48           ` [cocci] [PATCH v2] " Markus Elfring
2023-04-09 23:55             ` Viresh Kumar
2023-04-10 13:08               ` [cocci] [v2] " Markus Elfring
2023-04-11  3:30                 ` Viresh Kumar
2023-04-11  6:15                   ` [cocci] " Markus Elfring
2023-04-11  6:40                     ` Viresh Kumar
2023-04-11 14:20                       ` [cocci] " Markus Elfring
     [not found] ` <5ed1bc78-77a1-8eb8-43f9-6005d7de49c8@web.de>
2023-03-25 14:05   ` [cocci] [PATCH resent] clk: at91: sama7g5: Add two jump labels in sama7g5_pmc_setup() Markus Elfring
2023-03-25 14:05     ` Markus Elfring
2023-03-28  8:30     ` Nicolas Ferre
2023-03-28  8:30       ` Nicolas Ferre
2023-03-28 19:24       ` [cocci] " Markus Elfring
2023-03-28 19:24         ` Markus Elfring
2023-03-28 22:02         ` Alexandre Belloni
2023-03-28 22:02           ` Alexandre Belloni
     [not found] ` <8d193937-532f-959f-9b84-d911984508aa@web.de>
2023-03-25 14:07   ` [cocci] [PATCH resent] drbd: Fix exception handling in nla_put_drbd_cfg_context() Markus Elfring
2023-03-27 12:28     ` Christoph Böhmwalder
2023-03-27 12:28       ` [cocci] " Christoph Böhmwalder
2023-03-27 17:26       ` [cocci] " Markus Elfring
     [not found] ` <3151f1ef-63c6-d016-7c6a-2572e3d93d8f@web.de>
2023-03-25 14:10   ` [cocci] [PATCH resent] blk-mq: Add two labels in blk_rq_prep_clone() Markus Elfring
     [not found] ` <ab860edf-79ca-2035-c5a3-d25be6fd9dac@web.de>
2023-03-25 14:15   ` [cocci] [PATCH resent] perf/x86/amd/uncore: Fix exception handling in amd_uncore_cpu_up_prepare() Markus Elfring
2023-03-27  9:11     ` Adrian Hunter
2023-03-27 14:58       ` Peter Zijlstra
2023-03-27 17:36       ` [cocci] " Markus Elfring
2023-03-25 18:30 ` [PATCH] selftests: cgroup: Fix exception handling in test_memcg_oom_group_score_events() Markus Elfring
2023-03-25 18:30   ` [cocci] " Markus Elfring
2023-03-25 19:24   ` Lorenzo Stoakes
2023-03-25 19:24     ` Lorenzo Stoakes
2023-03-26  8:15     ` Markus Elfring
2023-03-26  8:15       ` [cocci] " Markus Elfring
2023-03-26 21:39       ` David Vernet
2023-03-26 21:39         ` David Vernet
2023-03-27  5:56         ` Markus Elfring
2023-03-27  5:56           ` [cocci] " Markus Elfring
2023-03-27  9:13           ` David Vernet
2023-03-26  8:20 ` [cocci] [PATCH] selinux: Improve exception handling in security_get_bools() Markus Elfring
     [not found]   ` <tencent_1C472DFEAAEC903262297C9B9C978B365909@qq.com>
2023-03-27  5:25     ` [cocci] " Markus Elfring
2023-03-27  7:00   ` [cocci] [PATCH v2] selinux: Adjust implementation of security_get_bools() Markus Elfring
2023-03-27 21:37     ` Paul Moore
2023-03-27 22:08       ` Paul Moore
2023-03-28  7:30         ` [cocci] " Markus Elfring
2023-03-28 19:59           ` Paul Moore
2023-03-29  5:20             ` [cocci] " Markus Elfring
2023-03-29 14:19               ` Paul Moore
2023-04-04  8:00 ` [cocci] Reconsidering repeated checks for error pointers (with SmPL) Markus Elfring
2023-04-05 17:10   ` [cocci] [PATCH] drm/nouveau: Add a jump label in nouveau_gem_ioctl_pushbuf() Markus Elfring
2023-04-05 17:10     ` [Nouveau] " Markus Elfring
2023-04-05 17:10     ` Markus Elfring
2023-04-05 20:10   ` [cocci] [PATCH] firmware: ti_sci: Fix exception handling in ti_sci_probe() Markus Elfring
2023-04-05 20:10     ` Markus Elfring
2023-05-16 15:20     ` [cocci] " Nishanth Menon
2023-05-16 15:20       ` Nishanth Menon
2023-05-16 15:56       ` [cocci] " Markus Elfring
2023-05-16 15:56         ` Markus Elfring
2023-05-17  6:43       ` [cocci] [PATCH] " Dan Carpenter
2023-05-17  6:43         ` Dan Carpenter
2023-04-06 16:10   ` [cocci] [PATCH 0/2] IB/uverbs: Adjustments for create_qp() Markus Elfring
2023-04-06 16:14     ` [cocci] [PATCH 1/2] IB/uverbs: Improve exception handling in create_qp() Markus Elfring
2023-04-06 16:18     ` [cocci] [PATCH 2/2] IB/uverbs: Delete a duplicate check " Markus Elfring
2023-04-09  9:59     ` [PATCH 0/2] IB/uverbs: Adjustments for create_qp() Leon Romanovsky
2023-04-06 20:12   ` [cocci] [PATCH] remoteproc: imx_dsp_rproc: Improve exception handling in imx_dsp_rproc_mbox_alloc() Markus Elfring
2023-04-06 20:12     ` Markus Elfring
2023-04-10 17:44     ` Mathieu Poirier
2023-04-10 17:44       ` Mathieu Poirier
2023-04-07  6:22   ` [cocci] [PATCH] spi: atmel: Improve exception handling in atmel_spi_configure_dma() Markus Elfring
2023-04-07  6:22     ` Markus Elfring
2023-04-07  7:54     ` Nicolas Ferre
2023-04-07  7:54       ` Nicolas Ferre
2023-04-07 15:07       ` [cocci] " Markus Elfring
2023-04-07 15:07         ` Markus Elfring
2023-04-07  7:50   ` [cocci] [PATCH] ipvs: Fix exception handling in two functions Markus Elfring
2023-04-07  7:50     ` Markus Elfring

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.