}
 EXPORT_SYMBOL_GPL(ahash_register_instance);
 
-void ahash_free_instance(struct crypto_instance *inst)
-{
-       crypto_drop_spawn(crypto_instance_ctx(inst));
-       kfree(ahash_instance(inst));
-}
-EXPORT_SYMBOL_GPL(ahash_free_instance);
-
-int crypto_init_ahash_spawn(struct crypto_ahash_spawn *spawn,
-                           struct hash_alg_common *alg,
-                           struct crypto_instance *inst)
-{
-       return crypto_init_spawn2(&spawn->base, &alg->base, inst,
-                                 &crypto_ahash_type);
-}
-EXPORT_SYMBOL_GPL(crypto_init_ahash_spawn);
-
-struct hash_alg_common *ahash_attr_alg(struct rtattr *rta, u32 type, u32 mask)
-{
-       struct crypto_alg *alg;
-
-       alg = crypto_attr_alg2(rta, &crypto_ahash_type, type, mask);
-       return IS_ERR(alg) ? ERR_CAST(alg) : __crypto_hash_alg_common(alg);
-}
-EXPORT_SYMBOL_GPL(ahash_attr_alg);
-
 bool crypto_hash_alg_has_setkey(struct hash_alg_common *halg)
 {
        struct crypto_alg *alg = &halg->base;
 
 }
 EXPORT_SYMBOL_GPL(crypto_init_spawn);
 
-int crypto_init_spawn2(struct crypto_spawn *spawn, struct crypto_alg *alg,
-                      struct crypto_instance *inst,
-                      const struct crypto_type *frontend)
-{
-       int err = -EINVAL;
-
-       if ((alg->cra_flags ^ frontend->type) & frontend->maskset)
-               goto out;
-
-       spawn->frontend = frontend;
-       err = crypto_init_spawn(spawn, alg, inst, frontend->maskset);
-
-out:
-       return err;
-}
-EXPORT_SYMBOL_GPL(crypto_init_spawn2);
-
 int crypto_grab_spawn(struct crypto_spawn *spawn, struct crypto_instance *inst,
                      const char *name, u32 type, u32 mask)
 {
 }
 EXPORT_SYMBOL_GPL(crypto_attr_alg_name);
 
-struct crypto_alg *crypto_attr_alg2(struct rtattr *rta,
-                                   const struct crypto_type *frontend,
-                                   u32 type, u32 mask)
-{
-       const char *name;
-
-       name = crypto_attr_alg_name(rta);
-       if (IS_ERR(name))
-               return ERR_CAST(name);
-
-       return crypto_find_alg(name, frontend, type, mask);
-}
-EXPORT_SYMBOL_GPL(crypto_attr_alg2);
-
 int crypto_attr_u32(struct rtattr *rta, u32 *num)
 {
        struct crypto_attr_u32 *nu32;
 }
 EXPORT_SYMBOL_GPL(crypto_inst_setname);
 
-void *crypto_alloc_instance(const char *name, struct crypto_alg *alg,
-                           unsigned int head)
-{
-       struct crypto_instance *inst;
-       char *p;
-       int err;
-
-       p = kzalloc(head + sizeof(*inst) + sizeof(struct crypto_spawn),
-                   GFP_KERNEL);
-       if (!p)
-               return ERR_PTR(-ENOMEM);
-
-       inst = (void *)(p + head);
-
-       err = crypto_inst_setname(inst, name, alg);
-       if (err)
-               goto err_free_inst;
-
-       return p;
-
-err_free_inst:
-       kfree(p);
-       return ERR_PTR(err);
-}
-EXPORT_SYMBOL_GPL(crypto_alloc_instance);
-
 void crypto_init_queue(struct crypto_queue *queue, unsigned int max_qlen)
 {
        INIT_LIST_HEAD(&queue->list);
 
 }
 EXPORT_SYMBOL_GPL(shash_free_instance);
 
-int crypto_init_shash_spawn(struct crypto_shash_spawn *spawn,
-                           struct shash_alg *alg,
-                           struct crypto_instance *inst)
-{
-       return crypto_init_spawn2(&spawn->base, &alg->base, inst,
-                                 &crypto_shash_type);
-}
-EXPORT_SYMBOL_GPL(crypto_init_shash_spawn);
-
-struct shash_alg *shash_attr_alg(struct rtattr *rta, u32 type, u32 mask)
-{
-       struct crypto_alg *alg;
-
-       alg = crypto_attr_alg2(rta, &crypto_shash_type, type, mask);
-       return IS_ERR(alg) ? ERR_CAST(alg) :
-              container_of(alg, struct shash_alg, base);
-}
-EXPORT_SYMBOL_GPL(shash_attr_alg);
-
 MODULE_LICENSE("GPL");
 MODULE_DESCRIPTION("Synchronous cryptographic hash type");
 
 
 int crypto_init_spawn(struct crypto_spawn *spawn, struct crypto_alg *alg,
                      struct crypto_instance *inst, u32 mask);
-int crypto_init_spawn2(struct crypto_spawn *spawn, struct crypto_alg *alg,
-                      struct crypto_instance *inst,
-                      const struct crypto_type *frontend);
 int crypto_grab_spawn(struct crypto_spawn *spawn, struct crypto_instance *inst,
                      const char *name, u32 type, u32 mask);
-
 void crypto_drop_spawn(struct crypto_spawn *spawn);
 struct crypto_tfm *crypto_spawn_tfm(struct crypto_spawn *spawn, u32 type,
                                    u32 mask);
 struct crypto_attr_type *crypto_get_attr_type(struct rtattr **tb);
 int crypto_check_attr_type(struct rtattr **tb, u32 type);
 const char *crypto_attr_alg_name(struct rtattr *rta);
-struct crypto_alg *crypto_attr_alg2(struct rtattr *rta,
-                                   const struct crypto_type *frontend,
-                                   u32 type, u32 mask);
-
-static inline struct crypto_alg *crypto_attr_alg(struct rtattr *rta,
-                                                u32 type, u32 mask)
-{
-       return crypto_attr_alg2(rta, NULL, type, mask);
-}
-
 int crypto_attr_u32(struct rtattr *rta, u32 *num);
 int crypto_inst_setname(struct crypto_instance *inst, const char *name,
                        struct crypto_alg *alg);
-void *crypto_alloc_instance(const char *name, struct crypto_alg *alg,
-                           unsigned int head);
 
 void crypto_init_queue(struct crypto_queue *queue, unsigned int max_qlen);
 int crypto_enqueue_request(struct crypto_queue *queue,
               container_of(queue->backlog, struct crypto_async_request, list);
 }
 
-static inline struct crypto_alg *crypto_get_attr_alg(struct rtattr **tb,
-                                                    u32 type, u32 mask)
-{
-       return crypto_attr_alg(tb[1], type, mask);
-}
-
 static inline int crypto_requires_off(u32 type, u32 mask, u32 off)
 {
        return (type ^ off) & mask & off;
 
 void crypto_unregister_ahashes(struct ahash_alg *algs, int count);
 int ahash_register_instance(struct crypto_template *tmpl,
                            struct ahash_instance *inst);
-void ahash_free_instance(struct crypto_instance *inst);
 
 int shash_no_setkey(struct crypto_shash *tfm, const u8 *key,
                    unsigned int keylen);
 
 bool crypto_hash_alg_has_setkey(struct hash_alg_common *halg);
 
-int crypto_init_ahash_spawn(struct crypto_ahash_spawn *spawn,
-                           struct hash_alg_common *alg,
-                           struct crypto_instance *inst);
-
 int crypto_grab_ahash(struct crypto_ahash_spawn *spawn,
                      struct crypto_instance *inst,
                      const char *name, u32 type, u32 mask);
        return __crypto_hash_alg_common(spawn->base.alg);
 }
 
-struct hash_alg_common *ahash_attr_alg(struct rtattr *rta, u32 type, u32 mask);
-
 int crypto_register_shash(struct shash_alg *alg);
 void crypto_unregister_shash(struct shash_alg *alg);
 int crypto_register_shashes(struct shash_alg *algs, int count);
                            struct shash_instance *inst);
 void shash_free_instance(struct crypto_instance *inst);
 
-int crypto_init_shash_spawn(struct crypto_shash_spawn *spawn,
-                           struct shash_alg *alg,
-                           struct crypto_instance *inst);
-
 int crypto_grab_shash(struct crypto_shash_spawn *spawn,
                      struct crypto_instance *inst,
                      const char *name, u32 type, u32 mask);
        return __crypto_shash_alg(spawn->base.alg);
 }
 
-struct shash_alg *shash_attr_alg(struct rtattr *rta, u32 type, u32 mask);
-
 int shash_ahash_update(struct ahash_request *req, struct shash_desc *desc);
 int shash_ahash_finup(struct ahash_request *req, struct shash_desc *desc);
 int shash_ahash_digest(struct ahash_request *req, struct shash_desc *desc);
        return crypto_instance_ctx(ahash_crypto_instance(inst));
 }
 
-static inline unsigned int ahash_instance_headroom(void)
-{
-       return sizeof(struct ahash_alg) - sizeof(struct crypto_alg);
-}
-
-static inline struct ahash_instance *ahash_alloc_instance(
-       const char *name, struct crypto_alg *alg)
-{
-       return crypto_alloc_instance(name, alg, ahash_instance_headroom());
-}
-
 static inline void ahash_request_complete(struct ahash_request *req, int err)
 {
        req->base.complete(&req->base, err);
        return crypto_instance_ctx(shash_crypto_instance(inst));
 }
 
-static inline struct shash_instance *shash_alloc_instance(
-       const char *name, struct crypto_alg *alg)
-{
-       return crypto_alloc_instance(name, alg,
-                                    sizeof(struct shash_alg) - sizeof(*alg));
-}
-
 static inline struct crypto_shash *crypto_spawn_shash(
        struct crypto_shash_spawn *spawn)
 {