Re: git: 96a550e9dd89 - main - genet: Add a detach routine
- In reply to: Zhenlei Huang : "Re: git: 96a550e9dd89 - main - genet: Add a detach routine"
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Mon, 04 Aug 2025 13:44:12 UTC
On 8/1/25 21:00, Zhenlei Huang wrote:
>
>
>> On Aug 2, 2025, at 4:09 AM, John Baldwin <jhb@FreeBSD.org> wrote:
>>
>> The branch main has been updated by jhb:
>>
>> URL: https://cgit.FreeBSD.org/src/commit/?id=96a550e9dd892f24a479da00ead93fbfaafb7733
>>
>> commit 96a550e9dd892f24a479da00ead93fbfaafb7733
>> Author: John Baldwin <jhb@FreeBSD.org>
>> AuthorDate: 2025-08-01 20:07:30 +0000
>> Commit: John Baldwin <jhb@FreeBSD.org>
>> CommitDate: 2025-08-01 20:07:30 +0000
>>
>> genet: Add a detach routine
>>
>> PR: 288309
>> Co-authored by: Mike Belanger <mibelanger@qnx.com>
>> MFC after: 2 weeks
>> ---
>> sys/arm64/broadcom/genet/if_genet.c | 35 +++++++++++++++++++++++++++++++++++
>> 1 file changed, 35 insertions(+)
>>
>> diff --git a/sys/arm64/broadcom/genet/if_genet.c b/sys/arm64/broadcom/genet/if_genet.c
>> index 182b5582fb7c..013573f1551b 100644
>> --- a/sys/arm64/broadcom/genet/if_genet.c
>> +++ b/sys/arm64/broadcom/genet/if_genet.c
>> @@ -201,6 +201,7 @@ struct gen_softc {
>>
>> static void gen_init(void *softc);
>> static void gen_start(if_t ifp);
>> +static void gen_stop(struct gen_softc *sc);
>> static void gen_destroy(struct gen_softc *sc);
>> static int gen_encap(struct gen_softc *sc, struct mbuf **mp);
>> static int gen_parse_tx(struct mbuf *m, int csum_flags);
>> @@ -379,6 +380,39 @@ gen_destroy(struct gen_softc *sc)
>> }
>> }
>>
>> +static int
>> +gen_detach(device_t dev)
>> +{
>> + struct gen_softc *sc;
>> + int error;
>> +
>> + sc = device_get_softc(dev);
>> +
>
> ~~~~~~
>> + GEN_LOCK(sc);
>> + gen_stop(sc);
>> + GEN_UNLOCK(sc);
>> + callout_drain(&sc->stat_ch);
>> + ether_ifdetach(sc->ifp);
> ~~~~~~
>
> I guess the above logic want be wrapped by condition `device_is_attached(dev)` .
That is always true for a detach routine, so there is no need to test it.
--
John Baldwin