#ifdef CONFIG_EDAC_DEBUG
 /* Values of 0 to 4 will generate output */
 int edac_debug_level = 1;
-EXPORT_SYMBOL(edac_debug_level);
+EXPORT_SYMBOL_GPL(edac_debug_level);
 #endif
 
 /* EDAC Controls, setable by module parameter, and sysfs */
        debugf4("\tchannel->label = '%s'\n", chan->label);
        debugf4("\tchannel->csrow = %p\n\n", chan->csrow);
 }
-EXPORT_SYMBOL(edac_mc_dump_channel);
+EXPORT_SYMBOL_GPL(edac_mc_dump_channel);
 
 void edac_mc_dump_csrow(struct csrow_info *csrow)
 {
        debugf4("\tcsrow->channels = %p\n", csrow->channels);
        debugf4("\tcsrow->mci = %p\n\n", csrow->mci);
 }
-EXPORT_SYMBOL(edac_mc_dump_csrow);
+EXPORT_SYMBOL_GPL(edac_mc_dump_csrow);
 
 void edac_mc_dump_mci(struct mem_ctl_info *mci)
 {
                mci->mod_name, mci->ctl_name);
        debugf3("\tpvt_info = %p\n\n", mci->pvt_info);
 }
-EXPORT_SYMBOL(edac_mc_dump_mci);
+EXPORT_SYMBOL_GPL(edac_mc_dump_mci);
 
 #endif  /* CONFIG_EDAC_DEBUG */
 
 
        return mci;
 }
-EXPORT_SYMBOL(edac_mc_alloc);
+EXPORT_SYMBOL_GPL(edac_mc_alloc);
 
 /**
  * edac_mc_free:  Free a previously allocated 'mci' structure
 {
        kfree(mci);
 }
-EXPORT_SYMBOL(edac_mc_free);
+EXPORT_SYMBOL_GPL(edac_mc_free);
 
 static struct mem_ctl_info *find_mci_by_pdev(struct pci_dev *pdev)
 {
        up(&mem_ctls_mutex);
        return 1;
 }
-EXPORT_SYMBOL(edac_mc_add_mc);
+EXPORT_SYMBOL_GPL(edac_mc_add_mc);
 
 /**
  * edac_mc_del_mc: Remove sysfs entries for specified mci structure and
                mci->mod_name, mci->ctl_name, pci_name(mci->pdev));
        return mci;
 }
-EXPORT_SYMBOL(edac_mc_del_mc);
+EXPORT_SYMBOL_GPL(edac_mc_del_mc);
 
 void edac_mc_scrub_block(unsigned long page, unsigned long offset, u32 size)
 {
        if (PageHighMem(pg))
                local_irq_restore(flags);
 }
-EXPORT_SYMBOL(edac_mc_scrub_block);
+EXPORT_SYMBOL_GPL(edac_mc_scrub_block);
 
 /* FIXME - should return -1 */
 int edac_mc_find_csrow_by_page(struct mem_ctl_info *mci, unsigned long page)
 
        return row;
 }
-EXPORT_SYMBOL(edac_mc_find_csrow_by_page);
+EXPORT_SYMBOL_GPL(edac_mc_find_csrow_by_page);
 
 /* FIXME - setable log (warning/emerg) levels */
 /* FIXME - integrate with evlog: http://evlog.sourceforge.net/ */
                                        mci->csrows[row].grain);
        }
 }
-EXPORT_SYMBOL(edac_mc_handle_ce);
+EXPORT_SYMBOL_GPL(edac_mc_handle_ce);
 
 void edac_mc_handle_ce_no_info(struct mem_ctl_info *mci, const char *msg)
 {
        mci->ce_noinfo_count++;
        mci->ce_count++;
 }
-EXPORT_SYMBOL(edac_mc_handle_ce_no_info);
+EXPORT_SYMBOL_GPL(edac_mc_handle_ce_no_info);
 
 void edac_mc_handle_ue(struct mem_ctl_info *mci,
                unsigned long page_frame_number, unsigned long offset_in_page,
        mci->ue_count++;
        mci->csrows[row].ue_count++;
 }
-EXPORT_SYMBOL(edac_mc_handle_ue);
+EXPORT_SYMBOL_GPL(edac_mc_handle_ue);
 
 void edac_mc_handle_ue_no_info(struct mem_ctl_info *mci, const char *msg)
 {
        mci->ue_noinfo_count++;
        mci->ue_count++;
 }
-EXPORT_SYMBOL(edac_mc_handle_ue_no_info);
+EXPORT_SYMBOL_GPL(edac_mc_handle_ue_no_info);
 
 #ifdef CONFIG_PCI