[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20250821023822.2820797-1-kuniyu@google.com>
Date: Thu, 21 Aug 2025 02:37:37 +0000
From: Kuniyuki Iwashima <kuniyu@...gle.com>
To: takamitz@...zon.co.jp
Cc: davem@...emloft.net, edumazet@...gle.com, enjuk@...zon.com,
horms@...nel.org, kuba@...nel.org, linux-hams@...r.kernel.org,
mingo@...nel.org, netdev@...r.kernel.org, pabeni@...hat.com,
tglx@...utronix.de, kuniyu@...gle.com
Subject: Re: [PATCH v1 net 2/3] net: rose: convert 'use' field to refcount_t
From: Takamitsu Iwai <takamitz@...zon.co.jp>
Date: Thu, 21 Aug 2025 02:47:06 +0900
> @@ -874,8 +874,6 @@ static int rose_connect(struct socket *sock, struct sockaddr *uaddr, int addr_le
>
> rose->state = ROSE_STATE_1;
>
> - rose->neighbour->use++;
> -
This is replaced by rose_neigh_hold() in rose_get_neigh(),
then rose_neigh_put() needs to be placed in error paths in
rose_connect() (and rose_route_frame()).
> rose_write_internal(sk, ROSE_CALL_REQUEST);
> rose_start_heartbeat(sk);
> rose_start_t1timer(sk);
[...]
> @@ -680,6 +679,7 @@ struct rose_neigh *rose_get_neigh(rose_address *addr, unsigned char *cause,
> for (i = 0; i < node->count; i++) {
> if (node->neighbour[i]->restarted) {
> res = node->neighbour[i];
> + rose_neigh_hold(node->neighbour[i]);
> goto out;
> }
> }
>
Powered by blists - more mailing lists