lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <b33f5cee-d3de-4cbd-8eeb-214ba6b42cb7@linux.dev>
Date: Wed, 23 Jul 2025 10:37:27 +0100
From: Vadim Fedorenko <vadim.fedorenko@...ux.dev>
To: Chenyuan Yang <chenyuan0y@...il.com>, andrew+netdev@...n.ch,
 davem@...emloft.net, edumazet@...gle.com, kuba@...nel.org,
 pabeni@...hat.com, richardcochran@...il.com, mingo@...nel.org,
 tglx@...utronix.de
Cc: netdev@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH] pch_gbe: Add NULL check for ptp_pdev in pch_gbe_probe()

On 23/07/2025 04:41, Chenyuan Yang wrote:
> Since pci_get_domain_bus_and_slot() can return NULL for PCI_DEVFN(12, 4),
> add NULL check for adapter->ptp_pdev in pch_gbe_probe().
> 
> This change is similar to the fix implemented in commit 9af152dcf1a0
> ("drm/gma500: Add NULL check for pci_gfx_root in mid_get_vbt_data()").
> 
> Signed-off-by: Chenyuan Yang <chenyuan0y@...il.com>
> ---
>   drivers/net/ethernet/oki-semi/pch_gbe/pch_gbe_main.c | 5 +++++
>   1 file changed, 5 insertions(+)
> 
> diff --git a/drivers/net/ethernet/oki-semi/pch_gbe/pch_gbe_main.c b/drivers/net/ethernet/oki-semi/pch_gbe/pch_gbe_main.c
> index e5a6f59af0b6..10b8f1fea1a2 100644
> --- a/drivers/net/ethernet/oki-semi/pch_gbe/pch_gbe_main.c
> +++ b/drivers/net/ethernet/oki-semi/pch_gbe/pch_gbe_main.c
> @@ -2515,6 +2515,11 @@ static int pch_gbe_probe(struct pci_dev *pdev,
>   		pci_get_domain_bus_and_slot(pci_domain_nr(adapter->pdev->bus),
>   					    adapter->pdev->bus->number,
>   					    PCI_DEVFN(12, 4));
> +	if (!adapter->ptp_pdev) {
> +		dev_err(&pdev->dev, "PTP device not found\n");
> +		ret = -ENODEV;
> +		goto err_free_netdev;
> +	}

Why is this error fatal? I believe the device still can transmit and
receive packets without PTP device. If this situation is really possible
I would suggest you to add checks to ioctl function to remove
timestamping support if there is no PTP device found

>   
>   	netdev->netdev_ops = &pch_gbe_netdev_ops;
>   	netdev->watchdog_timeo = PCH_GBE_WATCHDOG_PERIOD;


Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ