diff options
| author | Frans Kaashoek <kaashoek@mit.edu> | 2020-08-10 13:05:17 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-08-10 13:05:17 -0400 |
| commit | c31d35d8031c88b7e1ea8657cc9806dfdd4c3ef9 (patch) | |
| tree | a6c903e1c61c08f4cb87700c320752a737081dcb /kernel/pipe.c | |
| parent | 90eb90b5e203299427c3fde8c996a48835fc93cf (diff) | |
| parent | d8fe1773b26758c7c7b8f36724cd822555b33612 (diff) | |
| download | xv6-labs-2022-c31d35d8031c88b7e1ea8657cc9806dfdd4c3ef9.tar.xz xv6-labs-2022-c31d35d8031c88b7e1ea8657cc9806dfdd4c3ef9.zip | |
Merge branch 'riscv' into riscv
Diffstat (limited to 'kernel/pipe.c')
| -rw-r--r-- | kernel/pipe.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/kernel/pipe.c b/kernel/pipe.c index e358283..7ed402d 100644 --- a/kernel/pipe.c +++ b/kernel/pipe.c @@ -83,7 +83,7 @@ pipewrite(struct pipe *pi, uint64 addr, int n) acquire(&pi->lock); for(i = 0; i < n; i++){ while(pi->nwrite == pi->nread + PIPESIZE){ //DOC: pipewrite-full - if(pi->readopen == 0 || myproc()->killed){ + if(pi->readopen == 0 || pr->killed){ release(&pi->lock); return -1; } @@ -96,7 +96,7 @@ pipewrite(struct pipe *pi, uint64 addr, int n) } wakeup(&pi->nread); release(&pi->lock); - return n; + return i; } int @@ -108,7 +108,7 @@ piperead(struct pipe *pi, uint64 addr, int n) acquire(&pi->lock); while(pi->nread == pi->nwrite && pi->writeopen){ //DOC: pipe-empty - if(myproc()->killed){ + if(pr->killed){ release(&pi->lock); return -1; } |
