o Do not overwrite saved interrupt priority level by alloc_hash(),
use a separate variable. o Restore interrupt priority level before return (no-op in HEAD). Spotted by: Don Bowman <don@sandvine.com> MFC after: 5 days
This commit is contained in:
parent
a3a2d24e9c
commit
853af3f3f0
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=118008
@ -1516,7 +1516,7 @@ set_fs_parms(struct dn_flow_set *x, struct dn_flow_set *src)
|
||||
static int
|
||||
config_pipe(struct dn_pipe *p)
|
||||
{
|
||||
int i, s;
|
||||
int i, r, s;
|
||||
struct dn_flow_set *pfs = &(p->fs);
|
||||
struct dn_flow_queue *q;
|
||||
|
||||
@ -1570,10 +1570,11 @@ config_pipe(struct dn_pipe *p)
|
||||
|
||||
|
||||
if ( x->fs.rq == NULL ) { /* a new pipe */
|
||||
s = alloc_hash(&(x->fs), pfs) ;
|
||||
if (s) {
|
||||
r = alloc_hash(&(x->fs), pfs) ;
|
||||
if (r) {
|
||||
free(x, M_DUMMYNET);
|
||||
return s ;
|
||||
splx(s);
|
||||
return r ;
|
||||
}
|
||||
x->next = b ;
|
||||
if (a == NULL)
|
||||
@ -1614,10 +1615,11 @@ config_pipe(struct dn_pipe *p)
|
||||
set_fs_parms(x, pfs);
|
||||
|
||||
if ( x->rq == NULL ) { /* a new flow_set */
|
||||
s = alloc_hash(x, pfs) ;
|
||||
r = alloc_hash(x, pfs) ;
|
||||
if (s) {
|
||||
free(x, M_DUMMYNET);
|
||||
return s ;
|
||||
splx(s);
|
||||
return r ;
|
||||
}
|
||||
x->next = b;
|
||||
if (a == NULL)
|
||||
|
Loading…
Reference in New Issue
Block a user