Commit a533f0a5 authored by Han-Wen Nienhuys's avatar Han-Wen Nienhuys

fuse: don't write INTERRUPT reply

INTERRUPT does not require a reply to the kernel. Trying to send it
yields

  writer: Write/Writev failed, err: 2=no such file or
  directory. opcode: INTERRUPT
parent 9c329cad
...@@ -457,6 +457,9 @@ func doSetLkw(server *Server, req *request) { ...@@ -457,6 +457,9 @@ func doSetLkw(server *Server, req *request) {
req.status = server.fileSystem.SetLkw((*LkIn)(req.inData)) req.status = server.fileSystem.SetLkw((*LkIn)(req.inData))
} }
func doInterrupt(server *Server, req *request) {
}
//////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////
type operationFunc func(*Server, *request) type operationFunc func(*Server, *request)
...@@ -664,6 +667,7 @@ func init() { ...@@ -664,6 +667,7 @@ func init() {
_OP_FALLOCATE: doFallocate, _OP_FALLOCATE: doFallocate,
_OP_READDIRPLUS: doReadDirPlus, _OP_READDIRPLUS: doReadDirPlus,
_OP_RENAME2: doRename2, _OP_RENAME2: doRename2,
_OP_INTERRUPT: doInterrupt,
} { } {
operationHandlers[op].Func = v operationHandlers[op].Func = v
} }
......
...@@ -455,7 +455,7 @@ func (ms *Server) allocOut(req *request, size uint32) []byte { ...@@ -455,7 +455,7 @@ func (ms *Server) allocOut(req *request, size uint32) []byte {
func (ms *Server) write(req *request) Status { func (ms *Server) write(req *request) Status {
// Forget/NotifyReply do not wait for reply from filesystem server. // Forget/NotifyReply do not wait for reply from filesystem server.
switch req.inHeader.Opcode { switch req.inHeader.Opcode {
case _OP_FORGET, _OP_BATCH_FORGET, _OP_NOTIFY_REPLY: case _OP_FORGET, _OP_BATCH_FORGET, _OP_NOTIFY_REPLY, _OP_INTERRUPT:
return OK return OK
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment