summaryrefslogtreecommitdiff
path: root/privs.h
blob: 9f9cfdd0626dee927ca26138809eec7a8daf7a38 (plain)
1
2
3
4
5
6
7
8
#ifndef PRIVS_H
#define PRIVS_H

#include <stdbool.h>

extern void drop_privileges(bool enforce, uid_t uid, gid_t gid);

#endif /* PRIVS_H */
t:space:mode:
authorSowmini Varadhan <sowmini.varadhan@oracle.com>2015-04-08 12:33:47 -0400
committerDavid S. Miller <davem@davemloft.net>2015-04-08 15:17:32 -0400
commit443be0e5affe3acb6dd81e7402951677e0a0eb35 (patch)
tree74cfc543b82a49fd7b920aade205cdca1ecb586b /net/rds/connection.c
parent1789b2c077f6d6c82b04cfe49a0fec020dc42488 (diff)
RDS: make sure not to loop forever inside rds_send_xmit
If a determined set of concurrent senders keep the send queue full, we can loop forever inside rds_send_xmit. This fix has two parts. First we are dropping out of the while(1) loop after we've processed a large batch of messages. Second we add a generation number that gets bumped each time the xmit bit lock is acquired. If someone else has jumped in and made progress in the queue, we skip our goto restart. Original patch by Chris Mason. Signed-off-by: Sowmini Varadhan <sowmini.varadhan@oracle.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/rds/connection.c')