rable to DoS attacks.
Please provide a rationale why such packets should *not* be dropped
based on a relevant RFC document.
Thanks,
--
Email: Herbert Xu
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
if (type >= XFRM_MSG_MAX)
> return -EINVAL;
Your patch is wrong. Please check the definition of XFRM_MSG_MAX.
Thanks,
--
Email: Herbert Xu
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
ete
> --> __xfrm_policy_unlink //access policy_count[dir], trigger out of
> range access
>
> Add xfrm_policy_id2dir check in verify_newpolicy_info, make sure the computed
> dir is
> valid, to fix the issue.
>
> Reported-by: Hulk Robot
> F
dir) ||
> + (xfrm_policy_id2dir(p->index) >= XFRM_POLICY_MAX)))
Please just check
xfrm_policy_id2dir(p->index) != p->dir
Thanks,
--
Email: Herbert Xu
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
rify_newpolicy_info. So please fix it there.
Thanks!
--
Email: Herbert Xu
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
cy_unlink
and not here.
Your patch makes no sense.
Cheers,
--
Email: Herbert Xu
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
lush.
Reported-by: Dan Carpenter
Fixes: 6c4128f65857 ("rhashtable: Remove obsolete...")
Signed-off-by: Herbert Xu
diff --git a/net/ipv6/ila/ila_xlat.c b/net/ipv6/ila/ila_xlat.c
index ae6cd4cef8db..79d2e43c05c5 100644
--- a/net/ipv6/ila/ila_xlat.c
+++ b/net/ipv6/ila/ila_xlat.c
@@ -383,7 +383,
#x27;ve looked through the rhashtable code in question and everything
looks OK. So I suspect some earlier corruption has occured to cause
this anomalous result. Is it possible to collect earlier alloc/free
stack traces on the object in question?
Cheers,
--
Email: Herbert Xu
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
even just appending "(v3)" to
> the subject of the cover letter would've fixed that...
Noted.
Cheers,
--
Email: Herbert Xu
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
On Sun, Feb 17, 2019 at 10:52:09PM +, Colin King wrote:
> From: Colin Ian King
>
> There are spelling mistakes in warning macro messages. Fix them.
>
> Signed-off-by: Colin Ian King
Acked-by: Herbert Xu
--
Email: Herbert Xu
Home Page: http://gondor.apana.org.au/~herbert
d not to do this in my patch as it's not directly related
to the kfree issue.
But I agree that this makes more sense and we should make that
change in another patch.
Thanks!
--
Email: Herbert Xu
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
The rhashtable_walk_init function has been obsolete for more than
two years. This patch finally converts its last users over to
rhashtable_walk_enter and removes it.
Signed-off-by: Herbert Xu
---
include/linux/rhashtable.h |8
lib/rhashtable.c |2 +-
lib
When rhashtable insertion fails the mesh table code doesn't free
the now-orphan mesh path object. This patch fixes that.
Signed-off-by: Herbert Xu
---
net/mac80211/mesh_pathtbl.c | 17 +
1 file changed, 9 insertions(+), 8 deletions(-)
diff --git a/net/mac
s the walk list modifications. In fact
the previous code was buggy as the removals can race with each
other, potentially resulting in a double-free.
Signed-off-by: Herbert Xu
---
net/mac80211/mesh.h |6 +
net/mac80211/mesh_pathtbl.c | 138 +++-
2 fi
directly return the mathcing object.
Signed-off-by: Herbert Xu
---
net/mac80211/mesh_pathtbl.c | 24
1 file changed, 8 insertions(+), 16 deletions(-)
diff --git a/net/mac80211/mesh_pathtbl.c b/net/mac80211/mesh_pathtbl.c
index c3a7396fb955..8902395e406e 100644
--- a
fails (which can occur due to OOM).
The third patch is a code-cleanup to mac80211 while the last patch
removes an obsolete rhashtable API.
Thanks,
--
Email: Herbert Xu
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
On Wed, Feb 13, 2019 at 04:04:29PM +0100, Johannes Berg wrote:
> On Wed, 2019-02-13 at 22:39 +0800, Herbert Xu wrote:
> > + if (ret != -EEXIST)
> > return ERR_PTR(ret);
>
> Surely that should still be "if (ret && ret != -EEXIST)" otherwise yo
The rhashtable_walk_init function has been obsolete for more than
two years. This patch finally converts its last users over to
rhashtable_walk_enter and removes it.
Signed-off-by: Herbert Xu
---
include/linux/rhashtable.h |8
lib/rhashtable.c |2 +-
lib
When rhashtable insertion fails the mesh table code doesn't free
the now-orphan mesh path object. This patch fixes that.
Signed-off-by: Herbert Xu
---
net/mac80211/mesh_pathtbl.c | 12
1 file changed, 8 insertions(+), 4 deletions(-)
diff --git a/net/mac80211/mesh_pathtb
s the walk list modifications. In fact
the previous code was buggy as the removals can race with each
other, potentially resulting in a double-free.
Signed-off-by: Herbert Xu
---
net/mac80211/mesh.h |6 +
net/mac80211/mesh_pathtbl.c | 138 +++-
2 fi
moves an obsolete rhashtable API.
Thanks,
--
Email: Herbert Xu
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
directly return the mathcing object.
Signed-off-by: Herbert Xu
---
net/mac80211/mesh_pathtbl.c | 31 ++-
1 file changed, 10 insertions(+), 21 deletions(-)
diff --git a/net/mac80211/mesh_pathtbl.c b/net/mac80211/mesh_pathtbl.c
index db5a1aef22db..8902395e406e 100644
On Wed, Feb 13, 2019 at 01:16:13PM +0800, Herbert Xu wrote:
> The mesh table code walks over hash tables for two purposes. First of
> all it's used as part of a netlink dump process, but it is also used
> for looking up entries to delete using criteria other than the hash
> key
r is not due
to an existing entry (EEXIST).
Cheers,
--
Email: Herbert Xu
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
ree, please drop us a note to
> help improve the system]
>
> url:
> https://github.com/0day-ci/linux/commits/Herbert-Xu/rhashtable-Remove-obsolete-rhashtable_walk_init-function/20190213-182336
> config: x86_64-lkp (attached as .config)
> compiler: gcc-8 (Debian 8.2.0-20)
off-by: Herbert Xu
diff --git a/include/linux/rhashtable.h b/include/linux/rhashtable.h
index 20f9c6af7473..ae9c0f71f311 100644
--- a/include/linux/rhashtable.h
+++ b/include/linux/rhashtable.h
@@ -1113,14 +1113,6 @@ static inline int rhashtable_replace_fast(
return err;
}
-/* Obsol
On Wed, Feb 13, 2019 at 01:05:51PM +0800, Herbert Xu wrote:
> Hi:
>
> This patch fixes a number of issues with the use of the rhashtable API
> in mac80211. First of all it converts the use of rashtable walks over
> to a simple linked list. This is because an rhashtable walk
of the current
position, it always converts the current position to an integer
which defeats the purpose of the iterator.
Therefore this patch converts all uses of rhashtable walk into a
simple linked list.
Signed-off-by: Herbert Xu
---
net/mac80211/mesh.h |4 +
net/mac80211/mesh_p
When rhashtable insertion fails the mesh table code doesn't free
the now-orphan mesh path object. This patch fixes that.
Signed-off-by: Herbert Xu
---
net/mac80211/mesh_pathtbl.c | 11 +++
1 file changed, 7 insertions(+), 4 deletions(-)
diff --git a/net/mac80211/mesh_pathtb
27;re trying to lookup an object to delete.
It also fixes a potential memory leak when the rhashtable insertion
fails (which can occur due to OOM).
Thanks,
--
Email: Herbert Xu
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
is
approach.
Cheers,
--
Email: Herbert Xu
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
On Fri, Feb 08, 2019 at 05:48:34AM +0800, Herbert Xu wrote:
>
> > > Could you please show me who is doing this so I can review that
> > > to see whether it's a legitimate use of this API?
> >
> > I'm sure you'll say it's not legitimate, but
t;
> I'm sure you'll say it's not legitimate, but it still exists ;-)
>
> mesh_plink_broken() gets called from the TX status path, via
> ieee80211s_update_metric().
Let me take a look.
Thanks!
--
Email: Herbert Xu
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
would still cause it to complain.
>
> Cc: sta...@vger.kernel.org
> Reported-by: Jouni Malinen
> Signed-off-by: Johannes Berg
This interface wasn't designed for use in softirq contexts.
Could you please show me who is doing this so I can review that
to see whether it's a le
> ? rest_init+0x230/0x230
> ? kernel_init+0x10/0x110
> ? schedule_tail_wrapper+0x9/0xc
> ? ret_from_fork+0x19/0x24
>
> Cc: Thomas Graf
> Cc: Herbert Xu
> Cc: netdev@vger.kernel.org
> Cc: linux-ker...@vger.kernel.org
> Signed-off-by: Bart Van Assche
> ---
>
t the rehash and then
rescheduling so that we can shrink after the completion of the
rehash should it still be necessary.
The return value of EEXIST captures this case and other cases
(e.g., another thread expanded/rehashed the table at the same
time) where we should still proceed with the r
] __do_softirq+0xcb/0x280
> [ 338.730054] irq_exit+0xde/0xf0
> [ 338.733504] do_IRQ+0x54/0xd0
> [ 338.736745] common_interrupt+0xf/0xf
>
> Signed-off-by: Harsh Jain
> Cc: sta...@vger.kernel.org
Patch applied. Thanks.
--
Email: Herbert Xu
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
t; 1) Is this an expected variable with ESN enables connection?.
> >
> > 2) If packets are supposed to be dropped can't we avoid decryption overhead.
> >
> > Following logs are attached
> >
> > 1) dmesg log
> >
> > 2) debug patch used to reproduce the
ported-by: Xiumei Mu
Fixes: 219badfaade9 ("ipv6: frags: get rid of ip6frag_skb_cb/...")
Signed-off-by: Herbert Xu
diff --git a/net/ipv6/reassembly.c b/net/ipv6/reassembly.c
index 5c3c92713096..a98f95fb6eac 100644
--- a/net/ipv6/reassembly.c
+++ b/net/ipv6/reassembly.c
@@ -378,6 +
it kthread_create()+wake_up_process()
> and completely eliminate the separate synchronization.
>
> Acked-by: Phil Sutter
> Signed-off-by: Arnd Bergmann
Acked-by: Herbert Xu
--
Email: Herbert Xu
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
ombo and then move onto
the new one.
Of course I never had time to finish this and I think the entity
asking for this has moved onto something else.
Cheers,
--
Email: Herbert Xu
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
t; ---
> crypto/crypto_user_base.c | 37 -
> 1 file changed, 20 insertions(+), 17 deletions(-)
Patch applied. Thanks.
--
Email: Herbert Xu
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
t count, but I don't think that
> hurts.
>
> Finally, there is more pointer chasing as the chains are longer.
The biggest problem is that you can no longer return the lookup
result. When you perform a lookup on rhltable you need to return
all the matching objects, not just a random one.
Cheers,
--
Email: Herbert Xu
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
On Wed, Dec 12, 2018 at 07:49:08PM +1100, NeilBrown wrote:
> On Wed, Dec 12 2018, Herbert Xu wrote:
>
> > On Wed, Dec 12, 2018 at 05:41:29PM +1100, NeilBrown wrote:
> >>
> >> So you would substantially slow down the rhashtable_walk_start() step.
> >
> >
ed was an issue then surely you would
not drop out of the RCU read lock at all while iterating.
It sounds to me like you're trying to use this interface for
something that it's simply not designed to do.
Cheers,
--
Email: Herbert Xu
Home Page: http://gondor.apana.org.au/~herber
ects into the actual
hash table. That would solve the issue for both rhashtable and
rhlist.
Could we do that rather than using this ordered list that only
works for rhashtable?
Cheers,
--
Email: Herbert Xu
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
if (wait_event_interruptible(startup_wait, atomic_read(&startup_count)
> == 0))
> + pr_err(" wait_event interruptible failed\n");
> + /* count is 0 now, set it to -1 and wake up all threads together */
> + atomic_dec(&startup_count);
> + wake_up_all(&startup_wait);
> for (i = 0; i < tcount; i++) {
> if (IS_ERR(tdata[i].task))
> continue;
> --
> 2.20.0
>
--
Email: Herbert Xu
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
ash) then
that would be a bug that we should fix. Anything else like
duplicates just needs to be accepted by the caller.
So please explain how can an object be missed then we can work on
fixing that and that only.
Thanks,
--
Email: Herbert Xu
Home Page: http://gondor.apana.org.au/~herbert/
I couldn't
> applied then because it assumed another rhashtable patch which hadn't
> landed yet - it now has.
I thought we had agreed to drop this because nobody needs it
currently and it doesn't handle rhlist?
Cheers,
--
Email: Herbert Xu
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
On Mon, Dec 03, 2018 at 09:20:23AM +1100, NeilBrown wrote:
>
> I don't understand how this is relevant.
Thanks for the explanation, I had missed the double pointer part.
With that, I'm happy with this patch as it stands:
Acked-by: Herbert Xu
Cheers,
--
Email: Herbert Xu
ou missed my earlier reply beause of bouncing emails.
I think this is unnecessary because
RHT_NULLS_MARKER(RHT_NULLS_MARKER(0)) = RHT_NULLS_MARKER(0)
Thanks,
--
Email: Herbert Xu
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
ding bytes (NET_SKB_PAD) if needed.
Yes I agree. It doesn't hurt to dump more data.
Cheers,
--
Email: Herbert Xu
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
x checksum fault if the checksum turns out to be
correct in that case but it's not really a big deal.
Cheers,
--
Email: Herbert Xu
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
On Mon, Nov 19, 2018 at 11:56:35AM +0800, Herbert Xu wrote:
>
> I take that back. Because of your shift which cancels out the
> shift in NULLS_MARKER, it would appear that this should work just
> fine with RHT_NULLS_MARRKER(0), no? IOW, it would appear that
>
>
validation of the original skb->csum.
> So this check should be still inverted there??
>
> Or am I still missing anything here?
What do you mean? My copy of nf_ip_checksum seems to be doing the
right thing as far as verifying CHECKSUM_COMPLETED goes.
Cheers,
--
Emai
On Mon, Nov 19, 2018 at 11:54:15AM +0800, Herbert Xu wrote:
>
> > >> diff --git a/lib/rhashtable.c b/lib/rhashtable.c
> > >> index 30526afa8343..852ffa5160f1 100644
> > >> --- a/lib/rhashtable.c
> > >> +++ b/lib/rhashtable.c
> > >> @@
rhash_head __rcu *rhnull;
> >
> > I don't understand why you can't continue to do NULLS_MARKER(0) or
> > RHT_NULLS_MARKER(0).
>
> Because then the test
>
> + } while (he != RHT_NULLS_MARKER(head));
>
> in __rhashtable_lookup() would always succeed, and i
te packet plus the hardware-generated checksum.
That would make debugging these rare hardware faults much easier.
Cheers,
--
Email: Herbert Xu
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
marc.info/?l=linux-netdev&m=154086647601721&w=2
Can you please provide your backtrace?
Thanks,
--
Email: Herbert Xu
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
no warning or InCsumErrors after 1 hour.
>
> Fixes: fb286bb2990a ("[NET]: Detect hardware rx checksum faults correctly")
> Cc: Herbert Xu
> Cc: Tom Herbert
> Cc: Eric Dumazet
> Signed-off-by: Cong Wang
> ---
> net/core/datagram.c | 4 ++--
> net/core/dev
be decided at run-time.
In fact you can already do this at run-time anyway through the
xfrm interface. So please please please just ditch whatever that
you're using that's still glued to the long-obsolete (more than a
decade) af_key interface and switch it over to xfrm.
Thanks,
--
E
ble_walk_start(&hti);
> + }
> + }
The walk interface was designed to handle read-only iteration
through the hash table. While this probably works since the
actual freeing is delayed by RCU, it seems to be rather fragile.
How about using the dead flag but inst
you're still
invoking the normal rhashtable remove function.
Cheers,
--
Email: Herbert Xu
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
htable to another.
I'm relucant to add semantics that would restrain on how rhashtable
works unless we have real and valid use-cases for it.
Cheers,
--
Email: Herbert Xu
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
k_net_init+0x130/0x130 [nfnetlink]
> [ 200.975525] ? debug_show_all_locks+0x290/0x290
> [ 200.980363] ? debug_show_all_locks+0x290/0x290
> [ 200.986356] ? sched_clock_cpu+0x132/0x170
> [ 200.990352] ? find_held_lock+0x39/0x1b0
> [ 200.994355] ? sched_clock_local+0x10d/0x130
> [ 200.999531] ? memset+0x1f/0x40
>
> V2:
> - free all tables requested by Herbert Xu
>
> Signed-off-by: Taehee Yoo
Acked-by: Herbert Xu
Thanks,
--
Email: Herbert Xu
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
ture_tbl, ht);
> + if (tbl)
> + goto restart;
> }
> -
> - bucket_table_free(tbl);
> + bucket_table_free(rht_dereference(ht->tbl, ht));
Good catch. But don't we need to call bucket_table_free on all
the tables too rather than just the firs
> Signed-off-by: Atul Gupta
> Signed-off-by: Harsh Jain
Patch applied. Thanks.
--
Email: Herbert Xu
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
t; Also move the locking initialization down to the end.
> >
> > Signed-off-by: Davidlohr Bueso
>
> The user potentially "doing something bogus" is why the most
> expensive part of the initialization (the memory allocation)
> is done after everything else is vali
Cheers,
--
Email: Herbert Xu
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
; table. This must not be allowed
to occur.
Cheers,
--
Email: Herbert Xu
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
t
the network stack. As the aim is to convert as many existing hash
tables to rhashtable as possible, we want to keep this.
Cheers,
--
Email: Herbert Xu
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
r may not have even
started from the same place.
Cheers,
--
Email: Herbert Xu
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
instantiate the same nested table.
I think you missed the fact that when we use nested tables the spin
lock table is limited to just a single page and hence corresponds
to the first level in the nested table. Therefore it's always safe.
Cheers,
--
Email: Herbert Xu
Home Page: http://gondor.a
s is the same as was returned by the last ->next() call,
> then rhashtable_walk_prev() can be used to re-establish the
> current location in the table. If it returns NULL, then
> rhashtable_walk_next() should be used.
>
> Signed-off-by: NeilBrown
I will ack this if Tom is OK with
ULL and not
>safe, it walks the chain looking for the first object with an
>address greater than p and returns that. If there is none, it moves
>to the next hash chain.
>
> Signed-off-by: NeilBrown
I'm a bit torn on this. On the hand this is definitely an improve
multiple tables
in existence. Unless you hold the lock on the first table, what
is to stop two parallel inserters each from inserting into their
"last" tables which may not be the same table?
Cheers,
--
Email: Herbert Xu
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
r, sometimes it doesn't.
>
> This function is not currently used and is not worth keeping, so
> remove it.
>
> Signed-off-by: NeilBrown
I don't have a problem with this. But it would be good to hear
from Tom Herbert who added this.
--
Email: Herbert Xu
Home Page: http
meant to be held around this
operation?
Cheers,
--
Email: Herbert Xu
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
own
This looks nice.
> - spin_unlock_bh(old_tbl->locks);
> + rcu_assign_pointer(tmp, new_tbl);
Do we need this barrier since cmpxchg is supposed to provide memory
barrier semantics?
> + if (cmpxchg(&old_tbl->future_tbl, NULL, tmp) != NULL)
> + return -EEXIST;
Tha
ll be a use for this.
As to the bug fix, please separate it out of the patch and resubmit.
Thanks,
--
Email: Herbert Xu
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
t think the mutex is actually needed but since we don't
have rht_dereference_raw and this is just test code:
Acked-by: Herbert Xu
--
Email: Herbert Xu
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
ould not be added to the SPI hash
because we do not care about it on deleting path.
Signed-off-by: Masahide NAKAMURA
Signed-off-by: YOSHIFUJI Hideaki
I think it would be better to revert this.
Cheers,
--
Email: Herbert Xu
Home Page: http://gondor.apana.org.au/~herbe
't possible to workaround from userspace as
> xfrm_id_proto_match() will be always true for ah/esp/comp protos.
>
> So, don't try looking up by hash if SPI == 0.
>
> Cc: Steffen Klassert
> Cc: Herbert Xu
> Cc: "David S. Miller"
> Cc: netdev@vger.kern
ses
> it can be useful for the client to know whether it got the previous one
> or not.
I see. I'm OK with this provided that you will also remove/convert
users of rhashtable_walk_peek.
I don't think we need two functions that do almost the same thing.
Thanks,
--
Email: Herbert Xu
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
>
> Neither rhashtable_walk_enter() or rhltable_walk_enter() sleep, though
> they do take a spinlock without irq protection.
> So revise the comments to accurately state the contexts in which
> these functions can be called.
>
> Signed-off-by: NeilBrown
Acked-by: Herbert X
? Previously the not able to sleep part
completely ruled out any ambiguity but the new wording could confuse
people into thinking that this can be called from softirq context
where it would be unsafe if mixed with process context usage.
Thanks,
--
Email: Herbert Xu
Home Page: http://gond
for this function and its difference
from the existing rhashtable_walk_peek?
Thanks,
--
Email: Herbert Xu
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
On Wed, Apr 18, 2018 at 04:47:01PM +1000, NeilBrown wrote:
> grow_decision and shink_decision no longer exist, so remove
> the remaining references to them.
>
> Signed-off-by: NeilBrown
Acked-by: Herbert Xu
--
Email: Herbert Xu
Home Page: http://gondor.apana.org.au/~herbert/
P
does a naked spin lock so even though we removed the memory
allocation you still mustn't call it from interrupt context.
Why do you need to do that anyway?
Cheers,
--
Email: Herbert Xu
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
ity
so our sample space is not too small.
Automatic shrinking shouldn't be an issue because that's the slow
kind of resizing that we punt to kthread context and it can afford
to do a careful count.
Cheers,
--
Email: Herbert Xu
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
to rush things.
Thanks,
--
Email: Herbert Xu
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
e to
> use iter.p directly.
Yes that would definitely be the preferred option.
Thanks,
--
Email: Herbert Xu
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
y: Eric Dumazet
Acked-by: Herbert Xu
Thanks,
--
Email: Herbert Xu
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
y: Eric Dumazet
Acked-by: Herbert Xu
Thanks,
--
Email: Herbert Xu
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
nctions too:
- nested_table_free
- bucket_table_alloc
- rhashtable_rehash_table
Thanks,
--
Email: Herbert Xu
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
f->match(q, key)) {
> - refcount_inc(&q->refcnt);
> - spin_unlock(&hb->chain_lock);
> - return q;
> - }
> - depth++;
> - }
> - spin_unlock(&hb->chain_lock);
> + struct inet_frag_queue *fq;
>
> - if (depth <= INETFRAGS_MAXDEPTH)
> - return inet_frag_create(nf, f, key);
> + rcu_read_lock();
>
> - if (inet_frag_may_rebuild(f)) {
> - if (!f->rebuild)
> - f->rebuild = true;
> - inet_frag_schedule_worker(f);
> + fq = rhashtable_lookup(&nf->rhashtable, key, nf->f->rhash_params);
Ditto.
Thanks,
--
Email: Herbert Xu
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
peek. As otherwise
the object that triggers the out-of-space condition will be skipped
upon resumption.
Cheers,
--
Email: Herbert Xu
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
le in the face of
removals.
https://patchwork.ozlabs.org/patch/892534/
Cheers,
--
Email: Herbert Xu
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
ference, we must defer that to a work queue because dropping the last
> reference may sleep.
In light of Neil's latest patch, do we still need this?
Thanks,
--
Email: Herbert Xu
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
will need to proceed
> through the whole table again to be sure to see everything at least
> once.
>
> Signed-off-by: NeilBrown
Very nice!
Acked-by: Herbert Xu
--
Email: Herbert Xu
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
101 - 200 of 2505 matches
Mail list logo