Canon's Linux support is very poor. It has a proprietary printing language which needs a closed source daemon/filter to work, and it's finicky.
How finicky? If it doesn't like the version of something it forks itself until it borks your computer.
Used HP, Lexmark, Xerox, Samsung & Kyocera. All worked with Linux. Also, none of the HP printers I used created any problems during their lifetimes with me. One of them was very light duty, and I worn it down in 7-8 years, that's all.