s3:smb2_server: allocate smbd_smb2_request on talloc_tos()
authorStefan Metzmacher <metze@samba.org>
Wed, 16 Oct 2013 07:15:12 +0000 (09:15 +0200)
committerKarolin Seeger <kseeger@samba.org>
Tue, 10 Dec 2013 11:57:30 +0000 (12:57 +0100)
This matches the behavior for smb1 requests
and avoids an additional malloc() per request.

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: David Disseldorp <ddiss@samba.org>
(cherry picked from commit 9d33a3f3e814e2924a423496ccc133c6c73fcd12)

source3/smbd/smb2_server.c

index b179a0b0273ba57cddbd7ea3ba0b6393a36810c7..b8550376673a552b255c2bcde3fa478db80085aa 100644 (file)
@@ -269,7 +269,7 @@ static struct smbd_smb2_request *smbd_smb2_request_allocate(TALLOC_CTX *mem_ctx)
        /* Enable this to find subtle valgrind errors. */
        mem_pool = talloc_init("smbd_smb2_request_allocate");
 #else
-       mem_pool = talloc_pool(mem_ctx, 8192);
+       mem_pool = talloc_tos();
 #endif
        if (mem_pool == NULL) {
                return NULL;
@@ -281,7 +281,9 @@ static struct smbd_smb2_request *smbd_smb2_request_allocate(TALLOC_CTX *mem_ctx)
                return NULL;
        }
        talloc_reparent(mem_pool, mem_ctx, req);
+#if 0
        TALLOC_FREE(mem_pool);
+#endif
 
        req->last_session_id = UINT64_MAX;
        req->last_tid = UINT32_MAX;